home *** CD-ROM | disk | FTP | other *** search
/ BCI NET 2 / BCI NET 2.iso / archives / programming / languages / pcq_incl3v1.lha / Devices / ClipBoard.i < prev    next >
Encoding:
Text File  |  1994-10-17  |  2.0 KB  |  62 lines

  1. {
  2.         clipboard device command definitions 
  3. }
  4.  
  5. {$I "Include:Exec/Nodes.i"}
  6. {$I "Include:Exec/Lists.i"}
  7. {$I "Include:Exec/Ports.i"}
  8.  
  9. const
  10.     CBD_POST            = CMD_NONSTD + 0;
  11.     CBD_CURRENTREADID   = CMD_NONSTD + 1;
  12.     CBD_CURRENTWRITEID  = CMD_NONSTD + 2;
  13.     CBD_CHANGEHOOK      = CMD_NONSTD + 3;
  14.  
  15.     CBERR_OBSOLETEID    = 1;
  16.  
  17. type
  18.  
  19.     ClipboardUnitPartial = record
  20.         cu_Node         : Node;         { list of units }
  21.         cu_UnitNum      : Integer;      { unit number for this unit }
  22.     { the remaining unit data is private to the device }
  23.     end;
  24.     ClipboardUnitPartialPtr = ^ClipboardUnitPartial;
  25.  
  26.  
  27.     IOClipReq = record
  28.         io_Message      : Message;
  29.         io_Device       : Address;      { device node pointer   }
  30.         io_Unit         : Address;      { unit (driver private) }
  31.         io_Command      : Short;        { device command        }
  32.         io_Flags        : Byte;         { including QUICK and SATISFY }
  33.         io_Error        : Byte;         { error or warning num  }
  34.         io_Actual       : Integer;      { number of bytes transferred }
  35.         io_Length       : Integer;      { number of bytes requested }
  36.         io_Data         : Address;      { either clip stream or post port }
  37.         io_Offset       : Integer;      { offset in clip stream }
  38.         io_ClipID       : Integer;      { ordinal clip identifier }
  39.     end;
  40.     IOClipReqPtr = ^IOClipReq;
  41.  
  42. const
  43.     PRIMARY_CLIP        = 0;    { primary clip unit }
  44.  
  45. type
  46.  
  47.     SatisfyMsg = record
  48.         sm_Msg  : Message;      { the length will be 6 }
  49.         sm_Unit : Short;        { which clip unit this is }
  50.         sm_ClipID : Integer;    { the clip identifier of the post }
  51.     end;
  52.     SatisfyMsgPtr = ^SatisfyMsg;
  53.  
  54.    ClipHookMsg = Record
  55.     chm_Type,                    { zero for this structure format }
  56.     chm_ChangeCmd,               { command that caused this hook invocation: }
  57.                                  { either CMD_UPDATE OR CBD_POST }
  58.     chm_ClipID : Integer;        { the clip identifier of the new data }
  59.    END;
  60.    ClipHookMsgPtr = ^ClipHookMsg;
  61.  
  62.